Device drivers are normally used by computing devices (e.g., personal computers (PCs)) to communicate with other devices. For example, printer drivers are typically needed to send jobs from a user application (e.g., word processing application) executing on the computing device to a printer. Generally speaking, drivers comprise software programs that control the device that is to be utilized. The driver acts as a translator between the end device and applications that use the device in that each device has its own specialized language that it speaks. Drivers therefore are adapted to accept generic commands from an application and translate the generic commands into specialized commands for the end device.
Device drivers are usually provided to the user upon purchase of a particular device. Alternatively or in addition, a driver for a recently acquired device can be downloaded from the Internet. In that each driver is specifically adapted for a particular device, the user normally must install on his or her computer a different driver for each device that the user intends to access. Moreover, to obtain optimal performance, the user may need to periodically update the drivers as improved versions are developed by the device manufacturer.
Recently, some imaging device manufacturers have developed so-called “driverless” systems in which the user need not manually install a driver on his or her computer to access and use a given device. In one such arrangement, a print server is used that stores all drivers for all devices connected to a network. In this arrangement, jobs are sent to the print server which acts as a translator for the device that is to execute the job. In another arrangement, each device stores its associated driver on internal memory.
While providing an improvement over more conventional systems, driverless systems do not solve other problems. Aside from security issues discussed in U.S. patent application Ser. No. 09/954,832, the user or system administrator must still install the appropriate translators. For example, if an imaging device does not already comprise the translator needed for a particular print job, this translator must somehow be installed on the print server or the device. Additionally, from time to time it will be desirable to update one of more of these translators as new versions are made available.
From the foregoing, it can be appreciated that it would be desirable to have a system and method for facilitating installation of translators.